Static Lock Allocation
نویسنده
چکیده
The allocation of lock objects to critical sections in concurrent programs affects both performance and correctness. Traditionally, this allocation is done manually by the programmer. Recent work explores automatic lock allocation, aiming primarily to minimize conflicts and maximize parallelism by allocating locks to individual critical sections. We investigate several modes of lock allocation, using connected components (groups) of interfering critical sections on a critical section interference graph as the basis for allocation decisions. Our allocator uses thread-based side effect analysis which is built from several pluggable component analyses. It benefits from precise points-to and may happen in parallel information. Thread-local object information provides a small improvement over points-to analysis alone. Our framework minimizes the restrictions on input programs, dealing gracefully with nesting and deadlock, and requiring only simple annotations identifying critical sections. Legacy programs using synchronized regions can be processed without alteration. We find that dynamic locks do not broadly improve upon identical allocations of static locks, but allocating several dynamic locks in place of a single static lock can significantly increase parallelism in certain situations. We experiment with a range of small and large Java benchmarks on 1 to 8 processors, and find that a singleton allocation is sufficient for five of our benchmarks, and that a static allocation with Spark points-to analysis is sufficient for another two. Of the other five benchmarks, two require the use of all phases of our analysis, one depends on using the lockset allocation, and two benchmarks proved too complex to be automatically transformed to satisfactory performance.
منابع مشابه
Sable Research Group Component - Based Lock Allocation
The choice of lock objects in concurrent programs can affect both performance and correctness, a burden of complexity for programmers. Recently, various automated lock allocation and assignment techniques have been proposed, each aiming primarily to minimize the number of conflicts between critical sections. However, practical performance depends on a number of important factors, including the ...
متن کاملStatic Task Allocation in Distributed Systems Using Parallel Genetic Algorithm
Over the past two decades, PC speeds have increased from a few instructions per second to several million instructions per second. The tremendous speed of today's networks as well as the increasing need for high-performance systems has made researchers interested in parallel and distributed computing. The rapid growth of distributed systems has led to a variety of problems. Task allocation is a...
متن کاملA A Scalable Lock Manager for Multicores
Modern implementations of DBMS software are intended to take advantage of high core counts that are becoming common in high-end servers. However, we have observed that several database platforms, including MySQL, Shore-MT, and a commercial system, exhibit throughput collapse as load increases into over-saturation (where there are more request threads than cores), even for a workload with little...
متن کاملEvaluating the importance of dynamic allocation and routing of rescuers in reducing response time
Due to delay in receiving emergency medical services, a high number of injured people and patients annually lose their lives. Determining the medical service area and correct routing of rescuing operation is influential on the reduction of rescuers’ response time. Changing the traffic flow leads to change of medical service area. Therefore, it is expected that by observing changing traffic, the...
متن کاملFACTS Devices Allocation to Congestion Alleviation Incorporating Voltage Dependence of Loads
This paper presents a novel optimization based methodology to allocate Flexible AC Transmission Systems (FACTS) devices in an attempt to improve the previously mentioned researches in this field. Static voltage stability enhancement, voltage profile improvement, line congestion alleviation, and FACTS devices investment cost reduction, have been considered, simultaneously, as objective funct...
متن کامل